﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MathNet.Numerics.LinearAlgebra.Double;

namespace SpiceNet.Simulations
{
    /// <summary>
    /// A class representing the current noise data
    /// </summary>
    public class NoiseData
    {
        public double freq;
        public double lstFreq;
        public double delFreq;
        public double outNoiz;       /* integrated output noise as of the last frequency point */
        public double inNoise;        /* integrated input noise as of the last frequency point */
        public double GainSqInv;
        public double lnGainInv;
        public double lnFreq;
        public double lnLastFreq;
        public double delLnFreq;
        public int outNumber;      /* keeps track of the current output variable */
        public int numPlots;        /* keeps track of the number of active plots so we can close them in */
        /* a do loop. */
        public bool prtSummary;
        public DenseVector outpVector;  /* pointer to our array of noise outputs */
        public List<string> namelist { get; private set; } /* list of plot names */

        /// <summary>
        /// Constructor
        /// </summary>
        public NoiseData()
        {
            namelist = new List<string>();
        }
    }
}
